package com.ayu.shortlink.settlement.service.bases.strategy;

import java.math.BigDecimal;
import java.util.Map;

/**
 * 折扣策略选择器接口
 */
public interface AbstractDiscountStrategy {

    /**
     * 策略Handler
     * @param totalAmount 原订单金额
     * @param consumeRule 消费规则
     * @return 订单需要支付金额
     */
    BigDecimal handler(BigDecimal totalAmount, Map consumeRule);

    /**
     * 策略的标识
     * @return 策略的标识
     */
    default Integer mark(){return null;};
}
